package com.gitee.qdbp.general.common.api.sms.service;

import com.gitee.qdbp.able.exception.ServiceException;
import com.gitee.qdbp.general.common.api.sms.model.ISmsTemplate;

/**
 * 短信服务接口
 *
 * @author zhaohuihua
 * @version 151119
 */
public interface ISmsService {

    /**
     * 发送短信
     *
     * @param phone 手机号码
     * @param template 短信模板
     * @param args 短信模板的参数
     * @return
     */
    String send(String phone, ISmsTemplate template, Object... args) throws ServiceException;

    /**
     * 查询短信余额
     *
     * @return
     */
    Double balances() throws ServiceException;

    /**
     * 获取缓存时间配置(单位:秒)
     *
     * @param template
     * @return
     * @throws ServiceException
     */
    int getCacheTime(ISmsTemplate template) throws ServiceException;
}
